// MongoDB初始化脚本 - 安全创建数据库和集合
const dbName = "assistant";
const collectionName = "assistant_infos";

// 获取数据库列表判断是否存在
const dbList = db.getMongo().getDBNames();
const dbExists = dbList.includes(dbName);

// 切换到目标数据库（不存在会自动创建）
const db = db.getSiblingDB(dbName);

if (!dbExists) {
    print(`数据库 ${dbName} 不存在，正在创建...`);
} else {
    print(`数据库 ${dbName} 已存在`);
}

// 检查集合是否存在
const collExists = db.getCollectionNames().includes(collectionName);

if (!collExists) {
    print(`集合 ${collectionName} 不存在，正在创建...`);
    db.createCollection(collectionName);
    
    // 创建复合索引（userId + lastUseAt）
    db[collectionName].createIndex(
        { userId: 1, lastUseAt: -1 },
        { name: "query_by_user_sort_by_time" }
    );
    print("集合和索引创建完成");
} else {
    print(`集合 ${collectionName} 已存在`);
}

print("初始化检查完成");